package com.stefanie.nettydemo.test1;

import com.stefanie.nettydemo.utils.ByteBufferUtil;
import lombok.extern.slf4j.Slf4j;

import java.nio.ByteBuffer;

/**
 * @author:stefanie-zy
 * @time:2023/12/4-16:23
 * @description: position、limit
 */
@Slf4j
public class ByBufferReadWriteTest {

    public static void main(String[] args) {
        // 写入
        ByteBuffer buffer = ByteBuffer.allocate(10);
        buffer.put((byte) 0x61);
        buffer.put(new byte[]{0x61, 0x62, 0x59, 0x50});
        ByteBufferUtil.debugAll(buffer);
        log.info("写入数据之后没有切换至读模式，直接获取，信息：{}", (char) buffer.get());

        // 读取
        // -切换至读模式
        buffer.flip();
        log.info("切换至读模式，从头开始获取信息，信息：{}", (char) buffer.get());

        buffer.compact();
        ByteBufferUtil.debugAll(buffer);
    }
}
